var Student = /** @class */ (function () {
    function Student(firstName, middleInitial, lastName) {
        this.firstName = firstName;
        this.middleInitial = middleInitial;
        this.lastName = lastName;
        this.fullName = firstName + " " + middleInitial + " " + lastName;
    }
    return Student;
}());
function greeter(person) {
    return "Hello, " + person.firstName + " " + person.lastName;
}
var use = new Student("Tery", "Tao", "Tang");
document.body.innerHTML = greeter(use);
var list = [1, 2, 3];
var list2 = [4, 5, 6];
console.log(list, list2);
var x;
x = ['2', 2];
console.log(x);
console.log(x[0].substr);
var Color;
(function (Color) {
    Color[Color["Red"] = 1] = "Red";
    Color[Color["Green"] = 2] = "Green";
    Color[Color["Blue"] = 4] = "Blue";
})(Color || (Color = {}));
var colorName = Color[2];
console.log(colorName);
var notSure = 3;
notSure = 'Maybe a string instead';
notSure = false;
var list3 = [1, true, 'free'];
list3[2] = 100;
console.log(list3);
function warnUser() {
    console.log('This is my warning message');
}
var unusable = undefined;
var someValue = "this is a string";
var strLength = someValue.length;
var strLength2 = someValue.length;
console.log(strLength2);
function f(shouldInitialize) {
    if (shouldInitialize) {
        var x = 10;
    }
    return x;
}
console.log(f(true), f(false));
// for (var i = 0; i < 10; i++) {
//   // capture the current state of 'i'
//   // by invoking a function with its current value
//   (function(k) {
//     setTimeout(function() { console.log(k); }, 100 * i);
//   })(i);
// }
// for (let i = 0; i < 10 ; i++) {
//   setTimeout(function() {console.log(i); }, 100 * i);
// }
function theCityThatAlwaysSleeps() {
    var getCity;
    if (true) {
        var city_1 = "Seattle";
        getCity = function () {
            return city_1;
        };
    }
    return getCity();
}
console.log(theCityThatAlwaysSleeps());
function f2(_a) {
    var first = _a[0], second = _a[1];
    console.log(first);
    console.log(second);
}
var _a = [5, 6, 7], first = _a[0], rest = _a.slice(1);
var ipt = [1, 3];
var ipt2 = [2, 4];
f2(rest);
